ثوابت در گولنگ و روش ایجاد Constants در زبان برنامه نویسی Golang

ثوابت در گولنگ و روش ایجاد Constants در زبان برنامه نویسی Golang

در زبان برنامه نویسی گولنگ ثوابت چند ویژگی منحصر به فرد از جمله ثابت های تایپ شده، ثابت های تایپ نشده و شناسه iota وجود دارد که در این مقاله با روش های ایجاد ثوابت در زبان شیرین گولنگ آشنا می شم. پس تا انتهای این مطلب با من همراه باشید :)

ثابت ها (constants) در زبان های برنامه نویسی مقادیری هستیند که پس از تخصیص یک مقدار به آنها نمی توان آن مقدار را تغییر داد. ثوابت بخش های مهم و ضروری هر زبان برنامه نویسی هستند.

در زبان برنامه نویسی گولنگ ثوابت چند ویژگی منحصر به فرد از جمله ثابت های تایپ شده، ثابت های تایپ نشده و شناسه iota وجود دارد که در این مقاله با روش های ایجاد ثوابت در زبان شیرین گولنگ آشنا می شم. پس تا انتهای این مطلب با من همراه باشید :)

ثوابت در زبان برنامه نویسی گولنگ با const معرفی می شوند.

برای نمونه شما می خواهید یک ثابت داشته باشد که عدد مربوط به مالیات را نشان میدهد. در زبان برنامه نویسی Go بصورت زیر تعریف میکنید:

const tax = 10

 

انواع روش های تعریف ثابت در Go:

 

ثابت های تایپ شده(Typed Constants):

ثابت های تایپ شده داری یک نوع خاص مشخص شده هست که مقادیری که به آن ثابت داده می شود باید با نوع اعلامی آن یکی باشد. کد زیر را ببینید:

package main

import "fmt"

func main() {
    const pi float64 = 3.14159265359
    const days int = 7

    fmt.Println("Pi:", pi)
    fmt.Println("Days in a week:", days)
}

 

 

در کد بالا ما دو ثابت بصورت  typed constants تعریف کرده ایم، days و pi که نوع اولی float64 و نوع دومی int هست. پس شما می توانید نوع ثابت رابه این صورت به اضاف کنید.

 

ثابت های تایپ نشده(Untyped Constants)

بر خلاف نوع بالا این نوع ثابت ها نوع خاصی ندارن و بر اساس context آنها مشخص میشوند.

کد زیر رو ببینید:

package main

import "fmt"

func main() {
    const x = 42
    const y = 3.14

    fmt.Println("x:", x)
    fmt.Println("y:", y)
}

 

در کد بالا x و y ثابت های تایپ نشده هستند و انواع آنها مشخص نشده است اما از مقادیر آنها به ترتیب int و float64 برداشت میشه. به این ترتیب شما می توانید بدون تعیین نوع نیز در Go ثابت تعریف کنید.

 

اما نوع سوم یا iota

iota یک شناسه خاص در Go هست که برای ایجاد ثابت های شمارش شده استفاده می شه.  این شناسه با 0 شروع میشه و برای هر استفاده بعدی در یک بلوک، یک واحد افزایش پیدا میکنه. مثال زیر رو ببینیم با هم:

package main

import "fmt"

const (
    Sunday = iota // 0
    Monday        // 1
    Tuesday       // 2
    Wednesday     // 3
    Thursday      // 4
    Friday        // 5
    Saturday      // 6
)

func main() {
    fmt.Println("Days of the week:")
    fmt.Println("Sunday:", Sunday)
    fmt.Println("Monday:", Monday)
    fmt.Println("Tuesday:", Tuesday)
    fmt.Println("Wednesday:", Wednesday)
    fmt.Println("Thursday:", Thursday)
    fmt.Println("Friday:", Friday)
    fmt.Println("Saturday:", Saturday)
}

 

 

توی مثال بالا، از iota برای ایجاد یک سری از روزهای هفته استفاده شده که مقادیر برای هر روز یک واحد افزایش پیدا میکنه. و به این صورت می تونید از iota برای ایجاد ثابت های که نیاز هست یک واحد یک واحد افزایش پیدا کنند استفاده کنید.

 

توی این مطلب دیدیم که مانند دیگر زبان ها در Go هم ثابت ها ابزار ارزشمندی برای تعریف مقادیر غیرقابل تغیید هستند.


به همین صورت زمانی که به نوع خاصی نیاز داریم میتونیم از ثابت های تایپ شده یا زمانی که میخوایم نوع از نوع داده نوع ثابت برداشت شود، از ثابت های تایپ نشده استفاده می کنیم. و علاوه بر این، می توانیم از iota برای ایجاد ثابت های شمارش شده استفاده کنیم که هم اینکار رو ساده میکنه و هم کد ما را تمیزتر و قابل نگهداری تر می کنه.
 

امیدوارم این مقاله براتون مفید بوده باشه. میتونید از قسمت نظرات نظرتون رو در مورد این مقاله با من در میون بزارید :)


دسته بندی ها:

گولنگ

ارسال نظر

برای اطلاع از پاسخ به نظر شما می توانید ایمیل یا شماره موبایل خود را وارد نمایید. *

ایمیل و شماره موبایل شما کاملا مخفی خواهد ماند و در سایت نمایش داده نخواهد شد. *

اگر نظری برای این مطلب ارسال شد از طریق ایمیل مرا اطلاع بده!
لسیت نظرات
هنوز برای این مطلب نظری ارسال نشده است!